With the advent of operating systems that can operate in conjunction with a variety of different manufacturers' microprocessors, there has been an increasing desire among computer users to run multiple operating systems on the same computer. For example, a user may desire to run different versions of MICROSOFT WINDOWS on their computer as well as other operating systems, such as LINUX. In order to run multiple operating systems, the computer must first boot from the desired operating system, which either requires users to create separate partitions on a single storage system for each operating system, or to use separate storage systems for each operating system. The problems with either of these solutions are that the user must modify their current hard drive in some way to make it work and that an issue occurring with one operating system, such as a user mistake or a virus, can carry over to the other operating system because both partitions of the single storage system or both of the separate storage systems are still powered and connected to the microprocessor, even if the operating system associated with them are not in use.
Various solutions have been developed to deal with the above issues; typically by attempting to control which storage device can be mounted/recognized by the computer, while keeping other storage devices connected to the computer from being mounted/recognized. One solution controls the power supplied to the various storage devices connected to the computer such that only a selected storage device has power and can therefore be seen by the computer. There are two drawbacks to this solution. When a simple power switch is utilized to control power to a storage device that is operating as the boot drive and the switch is moved while the computer is running, the storage device will lose power and cause the computer to crash.
An additional issue with this solution is that each storage device requires its own Serial Advanced Technology Attachment (SATA) port on the computer. If each of these storage devices is meant to be a boot device, each time the user changes the selected drive, the user will also have to change the computer's BIOS settings so as to cause the computer to boot from the newly selected storage device. It is possible to address the switching issue by having the computer latch the switch when power is applied, so that once the switch setting is read the attached storage device cannot be changed until power is removed from the computer. This does not, however, solve the issue with the BIOS not supporting the changed boot SATA port, or the fact that each storage device requires its own SATA port. As a result, implementation of this type of solution is best left to users that are intimately familiar with the workings of computers, leaving the solution unsuitable for consumer markets. And, as difficult as this issue is to solve on a desktop system, it is even more difficult to solve in laptop systems, that do not enable users to easily control which storage devices installed within the laptop can be powered or used to boot the computer.
With partitions and boot managers, there is the additional drawback in that the user must interact with the computer during the boot process in order to select the proper partition or drive that the computer will use. If the user does not respond in a relatively short period of time, the computer will then boot the default operating system (i.e., partition or drive) even if the user wanted another one. If this happens, the user must then reboot the computer and start the process all over again. This drive selection process not only requires the user to be present and attentive through the boot process, but since it requires interaction with the machine, it can be difficult or impossible to operate by a young child who can not read or necessarily understand the screen to select the proper drive.